# ifndef RW_OPENMP_ATOMIC
# define RW_OPENMP_ATOMIC

# include <stdio.h>
# include <stdlib.h>
# include <omp.h>
# include <png.h>

extern int* rw_serial( const int NParticles, const int Size, const int seed );
extern int* rw_parallel_reduction( const int NParticles, const int Size, const unsigned int seed, const int numThreads );
extern int* rw_pOpenMP( const int NParticles, const int Size, const unsigned int seed, const int numThreads );
int* rw_pOpenMPCrit( const int NParticles, const int Size, const unsigned int seed, const int numThreads );
extern void initMTRefCPU( const char *fname );
extern int* rw_serial_iterativo ( const int incremento, const int Size, int seed );
extern int* rw_pOpenMP_iterativo ( int incremento, const int Size, unsigned int seed, const int numThreads );
# endif
